<!doctype html>
<html>
<head>
<meta charset='UTF-8'><meta name='viewport' content='width=device-width initial-scale=1'>

<link href='https://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,700,400&subset=latin,latin-ext' rel='stylesheet' type='text/css' /><style type='text/css'>html {overflow-x: initial !important;}:root { --bg-color: #ffffff; --text-color: #333333; --select-text-bg-color: #B5D6FC; --select-text-font-color: auto; --monospace: "Lucida Console",Consolas,"Courier",monospace; --title-bar-height: 20px; }
.mac-os-11 { --title-bar-height: 28px; }
html { font-size: 14px; background-color: var(--bg-color); color: var(--text-color); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5 { white-space: pre-wrap; }
body { margin: 0px; padding: 0px; height: auto; inset: 0px; font-size: 1rem; line-height: 1.42857; overflow-x: hidden; background: inherit; }
iframe { margin: auto; }
a.url { word-break: break-all; }
a:active, a:hover { outline: 0px; }
.in-text-selection, ::selection { text-shadow: none; background: var(--select-text-bg-color); color: var(--select-text-font-color); }
#write { margin: 0px auto; height: auto; width: inherit; word-break: normal; overflow-wrap: break-word; position: relative; white-space: normal; overflow-x: visible; padding-top: 36px; }
#write.first-line-indent p { text-indent: 2em; }
#write.first-line-indent li p, #write.first-line-indent p * { text-indent: 0px; }
#write.first-line-indent li { margin-left: 2em; }
.for-image #write { padding-left: 8px; padding-right: 8px; }
body.typora-export { padding-left: 30px; padding-right: 30px; }
.typora-export .footnote-line, .typora-export li, .typora-export p { white-space: pre-wrap; }
.typora-export .task-list-item input { pointer-events: none; }
@media screen and (max-width: 500px) {
  body.typora-export { padding-left: 0px; padding-right: 0px; }
  #write { padding-left: 20px; padding-right: 20px; }
}
#write li > figure:last-child { margin-bottom: 0.5rem; }
#write ol, #write ul { position: relative; }
img { max-width: 100%; vertical-align: middle; image-orientation: from-image; }
button, input, select, textarea { color: inherit; font: inherit; }
input[type="checkbox"], input[type="radio"] { line-height: normal; padding: 0px; }
*, ::after, ::before { box-sizing: border-box; }
#write h1, #write h2, #write h3, #write h4, #write h5, #write h6, #write p, #write pre { width: inherit; }
#write h1, #write h2, #write h3, #write h4, #write h5, #write h6, #write p { position: relative; }
p { line-height: inherit; }
h1, h2, h3, h4, h5, h6 { break-after: avoid-page; break-inside: avoid; orphans: 4; }
p { orphans: 4; }
h1 { font-size: 2rem; }
h2 { font-size: 1.8rem; }
h3 { font-size: 1.6rem; }
h4 { font-size: 1.4rem; }
h5 { font-size: 1.2rem; }
h6 { font-size: 1rem; }
.md-math-block, .md-rawblock, h1, h2, h3, h4, h5, h6, p { margin-top: 1rem; margin-bottom: 1rem; }
.hidden { display: none; }
.md-blockmeta { color: rgb(204, 204, 204); font-weight: 700; font-style: italic; }
a { cursor: pointer; }
sup.md-footnote { padding: 2px 4px; background-color: rgba(238, 238, 238, 0.7); color: rgb(85, 85, 85); border-radius: 4px; cursor: pointer; }
sup.md-footnote a, sup.md-footnote a:hover { color: inherit; text-transform: inherit; text-decoration: inherit; }
#write input[type="checkbox"] { cursor: pointer; width: inherit; height: inherit; }
figure { overflow-x: auto; margin: 1.2em 0px; max-width: calc(100% + 16px); padding: 0px; }
figure > table { margin: 0px; }
thead, tr { break-inside: avoid; break-after: auto; }
thead { display: table-header-group; }
table { border-collapse: collapse; border-spacing: 0px; width: 100%; overflow: auto; break-inside: auto; text-align: left; }
table.md-table td { min-width: 32px; }
.CodeMirror-gutters { border-right: 0px; background-color: inherit; }
.CodeMirror-linenumber { user-select: none; }
.CodeMirror { text-align: left; }
.CodeMirror-placeholder { opacity: 0.3; }
.CodeMirror pre { padding: 0px 4px; }
.CodeMirror-lines { padding: 0px; }
div.hr:focus { cursor: none; }
#write pre { white-space: pre-wrap; }
#write.fences-no-line-wrapping pre { white-space: pre; }
#write pre.ty-contain-cm { white-space: normal; }
.CodeMirror-gutters { margin-right: 4px; }
.md-fences { font-size: 0.9rem; display: block; break-inside: avoid; text-align: left; overflow: visible; white-space: pre; background: inherit; position: relative !important; }
.md-fences-adv-panel { width: 100%; margin-top: 10px; text-align: center; padding-top: 0px; padding-bottom: 8px; overflow-x: auto; }
#write .md-fences.mock-cm { white-space: pre-wrap; }
.md-fences.md-fences-with-lineno { padding-left: 0px; }
#write.fences-no-line-wrapping .md-fences.mock-cm { white-space: pre; overflow-x: auto; }
.md-fences.mock-cm.md-fences-with-lineno { padding-left: 8px; }
.CodeMirror-line, twitterwidget { break-inside: avoid; }
svg { break-inside: avoid; }
.footnotes { opacity: 0.8; font-size: 0.9rem; margin-top: 1em; margin-bottom: 1em; }
.footnotes + .footnotes { margin-top: 0px; }
.md-reset { margin: 0px; padding: 0px; border: 0px; outline: 0px; vertical-align: top; background: 0px 0px; text-decoration: none; text-shadow: none; float: none; position: static; width: auto; height: auto; white-space: nowrap; cursor: inherit; -webkit-tap-highlight-color: transparent; line-height: normal; font-weight: 400; text-align: left; box-sizing: content-box; direction: ltr; }
li div { padding-top: 0px; }
blockquote { margin: 1rem 0px; }
li .mathjax-block, li p { margin: 0.5rem 0px; }
li blockquote { margin: 1rem 0px; }
li { margin: 0px; position: relative; }
blockquote > :last-child { margin-bottom: 0px; }
blockquote > :first-child, li > :first-child { margin-top: 0px; }
.footnotes-area { color: rgb(136, 136, 136); margin-top: 0.714rem; padding-bottom: 0.143rem; white-space: normal; }
#write .footnote-line { white-space: pre-wrap; }
@media print {
  body, html { border: 1px solid transparent; height: 99%; break-after: avoid; break-before: avoid; font-variant-ligatures: no-common-ligatures; }
  #write { margin-top: 0px; border-color: transparent !important; padding-top: 0px !important; padding-bottom: 0px !important; }
  .typora-export * { -webkit-print-color-adjust: exact; }
  .typora-export #write { break-after: avoid; }
  .typora-export #write::after { height: 0px; }
  .is-mac table { break-inside: avoid; }
  #write > p:nth-child(1) { margin-top: 0px; }
  .typora-export-show-outline .typora-export-sidebar { display: none; }
  figure { overflow-x: visible; }
}
.footnote-line { margin-top: 0.714em; font-size: 0.7em; }
a img, img a { cursor: pointer; }
pre.md-meta-block { font-size: 0.8rem; min-height: 0.8rem; white-space: pre-wrap; background: rgb(204, 204, 204); display: block; overflow-x: hidden; }
p > .md-image:only-child:not(.md-img-error) img, p > img:only-child { display: block; margin: auto; }
#write.first-line-indent p > .md-image:only-child:not(.md-img-error) img { left: -2em; position: relative; }
p > .md-image:only-child { display: inline-block; width: 100%; }
#write .MathJax_Display { margin: 0.8em 0px 0px; }
.md-math-block { width: 100%; }
.md-math-block:not(:empty)::after { display: none; }
.MathJax_ref { fill: currentcolor; }
[contenteditable="true"]:active, [contenteditable="true"]:focus, [contenteditable="false"]:active, [contenteditable="false"]:focus { outline: 0px; box-shadow: none; }
.md-task-list-item { position: relative; list-style-type: none; }
.task-list-item.md-task-list-item { padding-left: 0px; }
.md-task-list-item > input { position: absolute; top: 0px; left: 0px; margin-left: -1.2em; margin-top: calc(1em - 10px); border: none; }
.math { font-size: 1rem; }
.md-toc { min-height: 3.58rem; position: relative; font-size: 0.9rem; border-radius: 10px; }
.md-toc-content { position: relative; margin-left: 0px; }
.md-toc-content::after, .md-toc::after { display: none; }
.md-toc-item { display: block; color: rgb(65, 131, 196); }
.md-toc-item a { text-decoration: none; }
.md-toc-inner:hover { text-decoration: underline; }
.md-toc-inner { display: inline-block; cursor: pointer; }
.md-toc-h1 .md-toc-inner { margin-left: 0px; font-weight: 700; }
.md-toc-h2 .md-toc-inner { margin-left: 2em; }
.md-toc-h3 .md-toc-inner { margin-left: 4em; }
.md-toc-h4 .md-toc-inner { margin-left: 6em; }
.md-toc-h5 .md-toc-inner { margin-left: 8em; }
.md-toc-h6 .md-toc-inner { margin-left: 10em; }
@media screen and (max-width: 48em) {
  .md-toc-h3 .md-toc-inner { margin-left: 3.5em; }
  .md-toc-h4 .md-toc-inner { margin-left: 5em; }
  .md-toc-h5 .md-toc-inner { margin-left: 6.5em; }
  .md-toc-h6 .md-toc-inner { margin-left: 8em; }
}
a.md-toc-inner { font-size: inherit; font-style: inherit; font-weight: inherit; line-height: inherit; }
.footnote-line a:not(.reversefootnote) { color: inherit; }
.reversefootnote { font-family: ui-monospace, sans-serif; }
.md-attr { display: none; }
.md-fn-count::after { content: "."; }
code, pre, samp, tt { font-family: var(--monospace); }
kbd { margin: 0px 0.1em; padding: 0.1em 0.6em; font-size: 0.8em; color: rgb(36, 39, 41); background: rgb(255, 255, 255); border: 1px solid rgb(173, 179, 185); border-radius: 3px; box-shadow: rgba(12, 13, 14, 0.2) 0px 1px 0px, rgb(255, 255, 255) 0px 0px 0px 2px inset; white-space: nowrap; vertical-align: middle; }
.md-comment { color: rgb(162, 127, 3); opacity: 0.6; font-family: var(--monospace); }
code { text-align: left; vertical-align: initial; }
a.md-print-anchor { white-space: pre !important; border-width: initial !important; border-style: none !important; border-color: initial !important; display: inline-block !important; position: absolute !important; width: 1px !important; right: 0px !important; outline: 0px !important; background: 0px 0px !important; text-decoration: initial !important; text-shadow: initial !important; }
.os-windows.monocolor-emoji .md-emoji { font-family: "Segoe UI Symbol", sans-serif; }
.md-diagram-panel > svg { max-width: 100%; }
[lang="flow"] svg, [lang="mermaid"] svg { max-width: 100%; height: auto; }
[lang="mermaid"] .node text { font-size: 1rem; }
table tr th { border-bottom: 0px; }
video { max-width: 100%; display: block; margin: 0px auto; }
iframe { max-width: 100%; width: 100%; border: none; }
.highlight td, .highlight tr { border: 0px; }
mark { background: rgb(255, 255, 0); color: rgb(0, 0, 0); }
.md-html-inline .md-plain, .md-html-inline strong, mark .md-inline-math, mark strong { color: inherit; }
.md-expand mark .md-meta { opacity: 0.3 !important; }
mark .md-meta { color: rgb(0, 0, 0); }
@media print {
  .typora-export h1, .typora-export h2, .typora-export h3, .typora-export h4, .typora-export h5, .typora-export h6 { break-inside: avoid; }
}
.md-diagram-panel .messageText { stroke: none !important; }
.md-diagram-panel .start-state { fill: var(--node-fill); }
.md-diagram-panel .edgeLabel rect { opacity: 1 !important; }
.md-fences.md-fences-math { font-size: 1em; }
.md-fences-advanced:not(.md-focus) { padding: 0px; white-space: nowrap; border: 0px; }
.md-fences-advanced:not(.md-focus) { background: inherit; }
.typora-export-show-outline .typora-export-content { max-width: 1440px; margin: auto; display: flex; flex-direction: row; }
.typora-export-sidebar { width: 300px; font-size: 0.8rem; margin-top: 80px; margin-right: 18px; }
.typora-export-show-outline #write { --webkit-flex: 2; flex: 2 1 0%; }
.typora-export-sidebar .outline-content { position: fixed; top: 0px; max-height: 100%; overflow: hidden auto; padding-bottom: 30px; padding-top: 60px; width: 300px; }
@media screen and (max-width: 1024px) {
  .typora-export-sidebar, .typora-export-sidebar .outline-content { width: 240px; }
}
@media screen and (max-width: 800px) {
  .typora-export-sidebar { display: none; }
}
.outline-content li, .outline-content ul { margin-left: 0px; margin-right: 0px; padding-left: 0px; padding-right: 0px; list-style: none; overflow-wrap: anywhere; }
.outline-content ul { margin-top: 0px; margin-bottom: 0px; }
.outline-content strong { font-weight: 400; }
.outline-expander { width: 1rem; height: 1.42857rem; position: relative; display: table-cell; vertical-align: middle; cursor: pointer; padding-left: 4px; }
.outline-expander::before { content: ""; position: relative; font-family: Ionicons; display: inline-block; font-size: 8px; vertical-align: middle; }
.outline-item { padding-top: 3px; padding-bottom: 3px; cursor: pointer; }
.outline-expander:hover::before { content: ""; }
.outline-h1 > .outline-item { padding-left: 0px; }
.outline-h2 > .outline-item { padding-left: 1em; }
.outline-h3 > .outline-item { padding-left: 2em; }
.outline-h4 > .outline-item { padding-left: 3em; }
.outline-h5 > .outline-item { padding-left: 4em; }
.outline-h6 > .outline-item { padding-left: 5em; }
.outline-label { cursor: pointer; display: table-cell; vertical-align: middle; text-decoration: none; color: inherit; }
.outline-label:hover { text-decoration: underline; }
.outline-item:hover { border-color: rgb(245, 245, 245); background-color: var(--item-hover-bg-color); }
.outline-item:hover { margin-left: -28px; margin-right: -28px; border-left: 28px solid transparent; border-right: 28px solid transparent; }
.outline-item-single .outline-expander::before, .outline-item-single .outline-expander:hover::before { display: none; }
.outline-item-open > .outline-item > .outline-expander::before { content: ""; }
.outline-children { display: none; }
.info-panel-tab-wrapper { display: none; }
.outline-item-open > .outline-children { display: block; }
.typora-export .outline-item { padding-top: 1px; padding-bottom: 1px; }
.typora-export .outline-item:hover { margin-right: -8px; border-right: 8px solid transparent; }
.typora-export .outline-expander::before { content: "+"; font-family: inherit; top: -1px; }
.typora-export .outline-expander:hover::before, .typora-export .outline-item-open > .outline-item > .outline-expander::before { content: "−"; }
.typora-export-collapse-outline .outline-children { display: none; }
.typora-export-collapse-outline .outline-item-open > .outline-children, .typora-export-no-collapse-outline .outline-children { display: block; }
.typora-export-no-collapse-outline .outline-expander::before { content: "" !important; }
.typora-export-show-outline .outline-item-active > .outline-item .outline-label { font-weight: 700; }
.md-inline-math-container mjx-container { zoom: 0.95; }
mjx-container { break-inside: avoid; }
.md-alert.md-alert-note { border-left-color: rgb(9, 105, 218); }
.md-alert.md-alert-important { border-left-color: rgb(130, 80, 223); }
.md-alert.md-alert-warning { border-left-color: rgb(154, 103, 0); }
.md-alert.md-alert-tip { border-left-color: rgb(31, 136, 61); }
.md-alert.md-alert-caution { border-left-color: rgb(207, 34, 46); }
.md-alert { padding: 0px 1em; margin-bottom: 16px; color: inherit; border-left: 0.25em solid rgb(0, 0, 0); }
.md-alert-text-note { color: rgb(9, 105, 218); }
.md-alert-text-important { color: rgb(130, 80, 223); }
.md-alert-text-warning { color: rgb(154, 103, 0); }
.md-alert-text-tip { color: rgb(31, 136, 61); }
.md-alert-text-caution { color: rgb(207, 34, 46); }
.md-alert-text { font-size: 0.9rem; font-weight: 700; }
.md-alert-text svg { fill: currentcolor; position: relative; top: 0.125em; margin-right: 1ch; overflow: visible; }
.md-alert-text-container::after { content: attr(data-text); text-transform: capitalize; pointer-events: none; margin-right: 1ch; }


.CodeMirror { height: auto; }
.CodeMirror.cm-s-inner { background: inherit; }
.CodeMirror-scroll { overflow: auto hidden; z-index: 3; }
.CodeMirror-gutter-filler, .CodeMirror-scrollbar-filler { background-color: rgb(255, 255, 255); }
.CodeMirror-gutters { border-right: 1px solid rgb(221, 221, 221); background: inherit; white-space: nowrap; }
.CodeMirror-linenumber { padding: 0px 3px 0px 5px; text-align: right; color: rgb(153, 153, 153); }
.cm-s-inner .cm-keyword { color: rgb(119, 0, 136); }
.cm-s-inner .cm-atom, .cm-s-inner.cm-atom { color: rgb(34, 17, 153); }
.cm-s-inner .cm-number { color: rgb(17, 102, 68); }
.cm-s-inner .cm-def { color: rgb(0, 0, 255); }
.cm-s-inner .cm-variable { color: rgb(0, 0, 0); }
.cm-s-inner .cm-variable-2 { color: rgb(0, 85, 170); }
.cm-s-inner .cm-variable-3 { color: rgb(0, 136, 85); }
.cm-s-inner .cm-string { color: rgb(170, 17, 17); }
.cm-s-inner .cm-property { color: rgb(0, 0, 0); }
.cm-s-inner .cm-operator { color: rgb(152, 26, 26); }
.cm-s-inner .cm-comment, .cm-s-inner.cm-comment { color: rgb(170, 85, 0); }
.cm-s-inner .cm-string-2 { color: rgb(255, 85, 0); }
.cm-s-inner .cm-meta { color: rgb(85, 85, 85); }
.cm-s-inner .cm-qualifier { color: rgb(85, 85, 85); }
.cm-s-inner .cm-builtin { color: rgb(51, 0, 170); }
.cm-s-inner .cm-bracket { color: rgb(153, 153, 119); }
.cm-s-inner .cm-tag { color: rgb(17, 119, 0); }
.cm-s-inner .cm-attribute { color: rgb(0, 0, 204); }
.cm-s-inner .cm-header, .cm-s-inner.cm-header { color: rgb(0, 0, 255); }
.cm-s-inner .cm-quote, .cm-s-inner.cm-quote { color: rgb(0, 153, 0); }
.cm-s-inner .cm-hr, .cm-s-inner.cm-hr { color: rgb(153, 153, 153); }
.cm-s-inner .cm-link, .cm-s-inner.cm-link { color: rgb(0, 0, 204); }
.cm-negative { color: rgb(221, 68, 68); }
.cm-positive { color: rgb(34, 153, 34); }
.cm-header, .cm-strong { font-weight: 700; }
.cm-del { text-decoration: line-through; }
.cm-em { font-style: italic; }
.cm-link { text-decoration: underline; }
.cm-error { color: red; }
.cm-invalidchar { color: red; }
.cm-constant { color: rgb(38, 139, 210); }
.cm-defined { color: rgb(181, 137, 0); }
div.CodeMirror span.CodeMirror-matchingbracket { color: rgb(0, 255, 0); }
div.CodeMirror span.CodeMirror-nonmatchingbracket { color: rgb(255, 34, 34); }
.cm-s-inner .CodeMirror-activeline-background { background: inherit; }
.CodeMirror { position: relative; overflow: hidden; }
.CodeMirror-scroll { height: 100%; outline: 0px; position: relative; box-sizing: content-box; background: inherit; }
.CodeMirror-sizer { position: relative; }
.CodeMirror-gutter-filler, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-vscrollbar { position: absolute; z-index: 6; display: none; outline: 0px; }
.CodeMirror-vscrollbar { right: 0px; top: 0px; overflow: hidden; }
.CodeMirror-hscrollbar { bottom: 0px; left: 0px; overflow: auto hidden; }
.CodeMirror-scrollbar-filler { right: 0px; bottom: 0px; }
.CodeMirror-gutter-filler { left: 0px; bottom: 0px; }
.CodeMirror-gutters { position: absolute; left: 0px; top: 0px; padding-bottom: 10px; z-index: 3; overflow-y: hidden; }
.CodeMirror-gutter { white-space: normal; height: 100%; box-sizing: content-box; padding-bottom: 30px; margin-bottom: -32px; display: inline-block; }
.CodeMirror-gutter-wrapper { position: absolute; z-index: 4; background: 0px 0px !important; border: none !important; }
.CodeMirror-gutter-background { position: absolute; top: 0px; bottom: 0px; z-index: 4; }
.CodeMirror-gutter-elt { position: absolute; cursor: default; z-index: 4; }
.CodeMirror-lines { cursor: text; }
.CodeMirror pre { border-radius: 0px; border-width: 0px; background: 0px 0px; font-family: inherit; font-size: inherit; margin: 0px; white-space: pre; overflow-wrap: normal; color: inherit; z-index: 2; position: relative; overflow: visible; }
.CodeMirror-wrap pre { overflow-wrap: break-word; white-space: pre-wrap; word-break: normal; }
.CodeMirror-code pre { border-right: 30px solid transparent; width: fit-content; }
.CodeMirror-wrap .CodeMirror-code pre { border-right: none; width: auto; }
.CodeMirror-linebackground { position: absolute; inset: 0px; z-index: 0; }
.CodeMirror-linewidget { position: relative; z-index: 2; overflow: auto; }
.CodeMirror-wrap .CodeMirror-scroll { overflow-x: hidden; }
.CodeMirror-measure { position: absolute; width: 100%; height: 0px; overflow: hidden; visibility: hidden; }
.CodeMirror-measure pre { position: static; }
.CodeMirror div.CodeMirror-cursor { position: absolute; visibility: hidden; border-right: none; width: 0px; }
.CodeMirror div.CodeMirror-cursor { visibility: hidden; }
.CodeMirror-focused div.CodeMirror-cursor { visibility: inherit; }
.cm-searching { background: rgba(255, 255, 0, 0.4); }
span.cm-underlined { text-decoration: underline; }
span.cm-strikethrough { text-decoration: line-through; }
.cm-tw-syntaxerror { color: rgb(255, 255, 255); background-color: rgb(153, 0, 0); }
.cm-tw-deleted { text-decoration: line-through; }
.cm-tw-header5 { font-weight: 700; }
.cm-tw-listitem:first-child { padding-left: 10px; }
.cm-tw-box { border-style: solid; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-color: inherit; border-top-width: 0px !important; }
.cm-tw-underline { text-decoration: underline; }
@media print {
  .CodeMirror div.CodeMirror-cursor { visibility: hidden; }
}


:root {
    --side-bar-bg-color: #fafafa;
    --control-text-color: #777;
}

@include-when-export url(https://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,700,400&subset=latin,latin-ext);

/* open-sans-regular - latin-ext_latin */
  /* open-sans-italic - latin-ext_latin */
    /* open-sans-700 - latin-ext_latin */
    /* open-sans-700italic - latin-ext_latin */
  html {
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
}

body {
    font-family: "Open Sans","Clear Sans", "Helvetica Neue", Helvetica, Arial, 'Segoe UI Emoji', sans-serif;
    color: rgb(51, 51, 51);
    line-height: 1.6;
}

#write {
    max-width: 860px;
  	margin: 0 auto;
  	padding: 30px;
    padding-bottom: 100px;
}

@media only screen and (min-width: 1400px) {
	#write {
		max-width: 1024px;
	}
}

@media only screen and (min-width: 1800px) {
	#write {
		max-width: 1200px;
	}
}

#write > ul:first-child,
#write > ol:first-child{
    margin-top: 30px;
}

a {
    color: #4183C4;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    position: relative;
    margin-top: 1rem;
    margin-bottom: 1rem;
    font-weight: bold;
    line-height: 1.4;
    cursor: text;
}
h1:hover a.anchor,
h2:hover a.anchor,
h3:hover a.anchor,
h4:hover a.anchor,
h5:hover a.anchor,
h6:hover a.anchor {
    text-decoration: none;
}
h1 tt,
h1 code {
    font-size: inherit;
}
h2 tt,
h2 code {
    font-size: inherit;
}
h3 tt,
h3 code {
    font-size: inherit;
}
h4 tt,
h4 code {
    font-size: inherit;
}
h5 tt,
h5 code {
    font-size: inherit;
}
h6 tt,
h6 code {
    font-size: inherit;
}
h1 {
    font-size: 2.25em;
    line-height: 1.2;
    border-bottom: 1px solid #eee;
}
h2 {
    font-size: 1.75em;
    line-height: 1.225;
    border-bottom: 1px solid #eee;
}

/*@media print {
    .typora-export h1,
    .typora-export h2 {
        border-bottom: none;
        padding-bottom: initial;
    }

    .typora-export h1::after,
    .typora-export h2::after {
        content: "";
        display: block;
        height: 100px;
        margin-top: -96px;
        border-top: 1px solid #eee;
    }
}*/

h3 {
    font-size: 1.5em;
    line-height: 1.43;
}
h4 {
    font-size: 1.25em;
}
h5 {
    font-size: 1em;
}
h6 {
   font-size: 1em;
    color: #777;
}
p,
blockquote,
ul,
ol,
dl,
table{
    margin: 0.8em 0;
}
li>ol,
li>ul {
    margin: 0 0;
}
hr {
    height: 2px;
    padding: 0;
    margin: 16px 0;
    background-color: #e7e7e7;
    border: 0 none;
    overflow: hidden;
    box-sizing: content-box;
}

li p.first {
    display: inline-block;
}
ul,
ol {
    padding-left: 30px;
}
ul:first-child,
ol:first-child {
    margin-top: 0;
}
ul:last-child,
ol:last-child {
    margin-bottom: 0;
}
blockquote {
    border-left: 4px solid #dfe2e5;
    padding: 0 15px;
    color: #777777;
}
blockquote blockquote {
    padding-right: 0;
}
table {
    padding: 0;
    word-break: initial;
}
table tr {
    border: 1px solid #dfe2e5;
    margin: 0;
    padding: 0;
}
table tr:nth-child(2n),
thead {
    background-color: #f8f8f8;
}
table th {
    font-weight: bold;
    border: 1px solid #dfe2e5;
    border-bottom: 0;
    margin: 0;
    padding: 6px 13px;
}
table td {
    border: 1px solid #dfe2e5;
    margin: 0;
    padding: 6px 13px;
}
table th:first-child,
table td:first-child {
    margin-top: 0;
}
table th:last-child,
table td:last-child {
    margin-bottom: 0;
}

.CodeMirror-lines {
    padding-left: 4px;
}

.code-tooltip {
    box-shadow: 0 1px 1px 0 rgba(0,28,36,.3);
    border-top: 1px solid #eef2f2;
}

.md-fences,
code,
tt {
    border: 1px solid #e7eaed;
    background-color: #f8f8f8;
    border-radius: 3px;
    padding: 0;
    padding: 2px 4px 0px 4px;
    font-size: 0.9em;
}

code {
    background-color: #f3f4f4;
    padding: 0 2px 0 2px;
}

.md-fences {
    margin-bottom: 15px;
    margin-top: 15px;
    padding-top: 8px;
    padding-bottom: 6px;
}


.md-task-list-item > input {
  margin-left: -1.3em;
}

@media print {
    html {
        font-size: 13px;
    }
    pre {
        page-break-inside: avoid;
        word-wrap: break-word;
    }
}

.md-fences {
	background-color: #f8f8f8;
}
#write pre.md-meta-block {
	padding: 1rem;
    font-size: 85%;
    line-height: 1.45;
    background-color: #f7f7f7;
    border: 0;
    border-radius: 3px;
    color: #777777;
    margin-top: 0 !important;
}

.mathjax-block>.code-tooltip {
	bottom: .375rem;
}

.md-mathjax-midline {
    background: #fafafa;
}

#write>h3.md-focus:before{
	left: -1.5625rem;
	top: .375rem;
}
#write>h4.md-focus:before{
	left: -1.5625rem;
	top: .285714286rem;
}
#write>h5.md-focus:before{
	left: -1.5625rem;
	top: .285714286rem;
}
#write>h6.md-focus:before{
	left: -1.5625rem;
	top: .285714286rem;
}
.md-image>.md-meta {
    /*border: 1px solid #ddd;*/
    border-radius: 3px;
    padding: 2px 0px 0px 4px;
    font-size: 0.9em;
    color: inherit;
}

.md-tag {
    color: #a7a7a7;
    opacity: 1;
}

.md-toc { 
    margin-top:20px;
    padding-bottom:20px;
}

.sidebar-tabs {
    border-bottom: none;
}

#typora-quick-open {
    border: 1px solid #ddd;
    background-color: #f8f8f8;
}

#typora-quick-open-item {
    background-color: #FAFAFA;
    border-color: #FEFEFE #e5e5e5 #e5e5e5 #eee;
    border-style: solid;
    border-width: 1px;
}

/** focus mode */
.on-focus-mode blockquote {
    border-left-color: rgba(85, 85, 85, 0.12);
}

header, .context-menu, .megamenu-content, footer{
    font-family: "Segoe UI", "Arial", sans-serif;
}

.file-node-content:hover .file-node-icon,
.file-node-content:hover .file-node-open-state{
    visibility: visible;
}

.mac-seamless-mode #typora-sidebar {
    background-color: #fafafa;
    background-color: var(--side-bar-bg-color);
}

.mac-os #write{
    caret-color: AccentColor;
}

.md-lang {
    color: #b4654d;
}

/*.html-for-mac {
    --item-hover-bg-color: #E6F0FE;
}*/

#md-notification .btn {
    border: 0;
}

.dropdown-menu .divider {
    border-color: #e5e5e5;
    opacity: 0.4;
}

.ty-preferences .window-content {
    background-color: #fafafa;
}

.ty-preferences .nav-group-item.active {
    color: white;
    background: #999;
}

.menu-item-container a.menu-style-btn {
    background-color: #f5f8fa;
    background-image: linear-gradient( 180deg , hsla(0, 0%, 100%, 0.8), hsla(0, 0%, 100%, 0)); 
}


 body {font-variant-ligatures: no-common-ligatures;} 
        :root { --count-content-h1: "";
--count-content-h2: counter(content-h2, decimal) ". ";
--count-content-h3: counter(content-h2, decimal) "." counter(content-h3, decimal) " ";
--count-content-h4: counter(content-h2, decimal) "." counter(content-h3, decimal) "." counter(content-h4, decimal) " ";
--count-content-h5: counter(content-h2, decimal) "." counter(content-h3, decimal) "." counter(content-h4, decimal) "." counter(content-h5, decimal) " ";
--count-content-h6: counter(content-h2, decimal) "." counter(content-h3, decimal) "." counter(content-h4, decimal) "." counter(content-h5, decimal) "." counter(content-h6, decimal) " ";
--count-outline-h1: "";
--count-outline-h2: counter(outline-h2, decimal) ". ";
--count-outline-h3: counter(outline-h2, decimal) "." counter(outline-h3, decimal) " ";
--count-outline-h4: counter(outline-h2, decimal) "." counter(outline-h3, decimal) "." counter(outline-h4, decimal) " ";
--count-outline-h5: counter(outline-h2, decimal) "." counter(outline-h3, decimal) "." counter(outline-h4, decimal) "." counter(outline-h5, decimal) " ";
--count-outline-h6: counter(outline-h2, decimal) "." counter(outline-h3, decimal) "." counter(outline-h4, decimal) "." counter(outline-h5, decimal) "." counter(outline-h6, decimal) " ";
--count-toc-h1: "";
--count-toc-h2: counter(toc-h2, decimal) ". ";
--count-toc-h3: counter(toc-h2, decimal) "." counter(toc-h3, decimal) " ";
--count-toc-h4: counter(toc-h2, decimal) "." counter(toc-h3, decimal) "." counter(toc-h4, decimal) " ";
--count-toc-h5: counter(toc-h2, decimal) "." counter(toc-h3, decimal) "." counter(toc-h4, decimal) "." counter(toc-h5, decimal) " ";
--count-toc-h6: counter(toc-h2, decimal) "." counter(toc-h3, decimal) "." counter(toc-h4, decimal) "." counter(toc-h5, decimal) "." counter(toc-h6, decimal) " ";
--count-table: "Table " counter(table, decimal);
--count-image: "Image " counter(image, decimal) " " attr(data-alt);
--count-fence: "Fence " counter(fence, decimal); }
        #write { counter-reset: content-h1 content-h2 image table fence; }
        #write > h1 { counter-set: content-h2; }
        #write > h2 { counter-set: content-h3; }
        #write > h3 { counter-set: content-h4; }
        #write > h4 { counter-set: content-h5; }
        #write > h5 { counter-set: content-h6; }
        

        #write > h1:before,
        #write > h1.md-focus.md-heading:before {
            counter-increment: content-h1;
            content: var(--count-content-h1);
        }
        
        #write > h2:before,
        #write > h2.md-focus.md-heading:before {
            counter-increment: content-h2;
            content: var(--count-content-h2);
        }
        
        #write > h3:before,
        #write > h3.md-focus.md-heading:before {
            counter-increment: content-h3;
            content: var(--count-content-h3);
        }
        
        #write > h4:before,
        #write > h4.md-focus.md-heading:before {
            counter-increment: content-h4;
            content: var(--count-content-h4);
        }
        
        #write > h5:before,
        #write > h5.md-focus.md-heading:before {
            counter-increment: content-h5;
            content: var(--count-content-h5);
        }
        
        #write > h6:before,
        #write > h6.md-focus.md-heading:before {
            counter-increment: content-h6;
            content: var(--count-content-h6);
        }
        
        #write > h3.md-focus:before,
        #write > h4.md-focus:before,
        #write > h5.md-focus:before,
        #write > h6.md-focus:before,
        h3.md-focus:before,
        h4.md-focus:before,
        h5.md-focus:before,
        h6.md-focus:before {
            color: inherit;
            border: inherit;
            border-radius: inherit;
            position: inherit;
            left: initial;
            float: none;
            top: initial;
            font-size: inherit;
            padding-left: inherit;
            padding-right: inherit;
            vertical-align: inherit;
            font-weight: inherit;
            line-height: inherit;
            visibility: inherit;
        }

        .outline-content { counter-reset: outline-h1 outline-h2; }
        .outline-h1 { counter-set: outline-h2; }
        .outline-h2 { counter-set: outline-h3; }
        .outline-h3 { counter-set: outline-h4; }
        .outline-h4 { counter-set: outline-h5; }
        .outline-h5 { counter-set: outline-h6; }
        
        .outline-content .outline-h1 .outline-label:before {
            counter-increment: outline-h1;
            content: var(--count-outline-h1);
        }
        
        .outline-content .outline-h2 .outline-label:before {
            counter-increment: outline-h2;
            content: var(--count-outline-h2);
        }
        
        .outline-content .outline-h3 .outline-label:before {
            counter-increment: outline-h3;
            content: var(--count-outline-h3);
        }
        
        .outline-content .outline-h4 .outline-label:before {
            counter-increment: outline-h4;
            content: var(--count-outline-h4);
        }
        
        .outline-content .outline-h5 .outline-label:before {
            counter-increment: outline-h5;
            content: var(--count-outline-h5);
        }
        
        .outline-content .outline-h6 .outline-label:before {
            counter-increment: outline-h6;
            content: var(--count-outline-h6);
        }
</style><title>OS13.【Linux】项目的自动化构建工具_make</title>
</head>
<body class='typora-export os-windows'><div class='typora-export-content'>
<div id='write'  class=''><p><strong><span>目录</span></strong></p><p><a href='#1.Linux%E4%B8%8B%E7%BC%96%E8%AF%91%E5%A4%A7%E5%9E%8B%E9%A1%B9%E7%9B%AE%E7%9A%84%E4%B8%80%E8%88%AC%E6%96%B9%E6%B3%95'><span>1.Linux下编译大型项目的一般方法</span></a></p><p><a href='#2.make%E5%92%8Cmakefile'><span>2.make和makefile</span></a></p><p><a href='#%E5%8C%BA%E5%88%AB'><span>区别</span></a></p><p><a href='#makefile%E7%9A%84%E7%AE%80%E5%8D%95%E7%BC%96%E5%86%99'><span>makefile的简单编写</span></a></p><p><a href='#%E4%BE%9D%E8%B5%96%E5%85%B3%E7%B3%BB%E5%92%8C%E4%BE%9D%E8%B5%96%E6%96%B9%E6%B3%95'><span>依赖关系和依赖方法</span></a></p><p><a href='#%E6%B8%85%E7%90%86%E6%96%B9%E6%B3%95'><span>清理方法</span></a></p><p><a href='#%E6%BC%94%E7%A4%BAmakefile%E4%B8%AD%E7%9A%84%E5%A4%9A%E4%B8%AA%E4%BE%9D%E8%B5%96%E5%85%B3%E7%B3%BB'><span>演示makefile中的多个依赖关系</span></a></p><p><a href='#%E7%AE%80%E5%8D%95%E7%90%86%E8%A7%A3make%E7%9A%84%E8%87%AA%E5%8A%A8%E5%8C%96%E6%8E%A8%E5%AF%BC'><span>简单理解make的自动化推导</span></a></p><p><a href='#make%E7%9A%84%E9%BB%98%E8%AE%A4%E9%80%89%E9%A1%B9'><span>make的默认选项</span></a></p><p><a href='#%E5%88%A4%E6%96%AD%E5%8F%AF%E6%89%A7%E8%A1%8C%E6%96%87%E4%BB%B6%E6%98%AF%E5%90%A6%E6%9C%80%E6%96%B0%E7%9A%84%E6%96%B9%E6%B3%95'><span>判断可执行文件是否最新的方法</span></a></p><p><a href='#Linux%E4%B8%8B%E7%9A%84%E4%B8%89%E7%A7%8D%E6%97%B6%E9%97%B4%E7%B1%BB%E5%9E%8B'><span>Linux下的三种时间类型</span></a></p><p><a href='#stat%E5%91%BD%E4%BB%A4'><span>stat命令</span></a></p><p><a href='#%E4%B8%89%E7%A7%8D%E6%97%B6%E9%97%B4%E7%B1%BB%E5%9E%8B'><span>三种时间类型</span></a></p><p><a href='#%E4%BF%AE%E6%94%B9%E6%97%B6%E9%97%B4(Modification%20Time%2Cmtime)'><span>修改时间(Modification Time,mtime)</span></a></p><p><a href='#%E6%94%B9%E5%8F%98%E6%97%B6%E9%97%B4(Change%20Time%2Cctime)'><span>改变时间(Change Time,ctime)</span></a></p><p><a href='#%E8%AE%BF%E9%97%AE%E6%97%B6%E9%97%B4(Access%20Time%2C%E5%8F%88%E7%A7%B0atime)'><span>访问时间(Access Time,又称atime)</span></a></p><p><a href='#%E5%9C%A8%E4%B8%8D%E6%9B%B4%E6%94%B9%E6%BA%90%E6%96%87%E4%BB%B6%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E8%AE%A9make%E5%8F%8D%E5%A4%8D%E7%BC%96%E8%AF%91'><span>在不更改源文件的情况下让make反复编译</span></a></p><p><a href='#%E6%96%B9%E6%B3%951%3A%E6%94%B9%E5%8F%98%E4%BF%AE%E6%94%B9%E6%97%B6%E9%97%B4'><span>方法1:改变修改时间</span></a></p><p><a href='#%E6%96%B9%E6%B3%952%3A%20.PHONY%E4%BF%AE%E9%A5%B0'><span>方法2: .PHONY修饰</span></a></p><p><a href='#%E4%BC%AA%E7%9B%AE%E6%A0%87%E7%9A%84%E4%BD%9C%E7%94%A8'><span>伪目标的作用</span></a></p><p><a href='#%E7%AE%80%E5%86%99%E7%AC%A6%E5%8F%B7'><span>简写符号</span></a></p><p><a href='#%24%40%E5%92%8C%25%5E'><span>$@和%^</span></a></p><p><a href='#%40'><span>@</span></a></p><p><a href='#3.makefile%E5%AD%A6%E4%B9%A0%E8%B5%84%E6%96%99'><span>3.makefile学习资料</span></a></p><p><a href='#4.%E6%9C%89%E5%85%B3makefile%E7%9A%84%E5%85%B6%E4%BB%96%E5%86%85%E5%AE%B9'><span>4.有关makefile的其他内容</span></a></p><hr /><h1 id='1linux下编译大型项目的一般方法'><span>1.Linux下编译大型项目的一般方法</span></h1><p><span>一般情况下,大型项目有很多源文件,其按类型、功能、模块分别放在若干个目录中,如何有序编译源文件?</span></p><p><span>Linux下编译大型项目可以用makefile命令,以开源的高性能键值存储数据库redis为例,目录的结构比较复杂</span></p><p><span>先将redis项目克隆到服务器上:</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation"><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-builtin">git</span> clone https://github.com/redis/redis.git</span></pre></div></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 23px;"></div><div class="CodeMirror-gutters" style="height: 23px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>tree命令查看redis目录的结构:</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation"><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">tree redis</span></pre></div></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 23px;"></div><div class="CodeMirror-gutters" style="height: 23px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>而编译这些源文件只需要一个命令:</span><strong><span>make</span></strong><span>,而项目的构建方法写在Makefile文件中:</span></p><p><img src="data:image;base64,iVBORw0KGgoAAAANSUhEUgAAAu4AAAGRCAMAAAANX8ZxAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAALrUExURf//////x4hjblljlsH//9+ngG+n4sGObv//4qN3blljblljgKPg///grW9jgFmOx//ClojC/29jbll3rd///6OngG9jloh3rYhjgIiOgIinrVmOlohjlqOObojC4m+nx4jCx6Pg4sHgrW+Ox6N3lqPgx1mOrcGOgIiOx8H/4qOOraOnlm93gG+nrYh3gG93rcGngKN3gK5jKB8jKB9jsP//14dAKD2H19aHRB9Aitb///+uZh8jZq7//2Gu///Wij0jKB8jRIfW////sGEjKD0jRP/YqitLqtL/////xVIwkqf///+zkgpsxYdAROhiLs8ia+j//88iLiswaQowaVKz/1IwaSuO4f//4XtLaVl3gPGHSQowfHvY/9KOfKdsac9isgpLqiswfD0jZmEjRB9jZmEjZmFAiodjKP/VjdQiLtSH2P//2OA/Ls8/jfH//65jRNb/1/+ua///stoiLtqu/9Qia2GHij1Aitb/sGFARCswkqf/4YfWsK7/sD2Hij1ARM8iSeDV//Guax9jimGusIfW12Gu18HCltoiSf+2y2Y5y8T//+CTwmY5umY5wqna///a1Xk5upC2////4JA5umZT1eD//8Rzuv//7qlTunmT7nk5wmZz4OCTy2FjsJA5wsTa1Xk5y6m21ana4P//63lnrgVQrgVQwqX/////209Qriae66WBrgWB2wVQt3nd/9GetwVnztH//0++///dziZnznmBrv++wiZQtyZQwiZQrntLfAowknuOktaHZgpLklJLfHtLknuOfNL/xVIwfODV2CtsxXtsaYdAZtQiSStLkq7/19L/4dLYqq7WitKzktauZpC24P39/fz8/Pf39/7+/vj4+PHx8b6+vre3t+vr6/Dw8O/v7/b29sXFxcTExPr6+u7u7ufn57a2tu3t7a+vr+np6SZnt729vejo6Hmewurq6rCwsPX19by8vHnd209QwtH/60+Bwnlnt3nd6yae209nwk9nrqG4DNkAAAABYktHRACIBR1IAAAAB3RJTUUH6QYXCwUlhTe1jwAAAAFvck5UAc+id5oAACbLSURBVHja7Z17fBTnee9H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" referrerpolicy="no-referrer"></p><p><span>使用切换到项目的目录后,用make命令编译项目:</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation"><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-builtin">cd</span> redis</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-builtin">make</span></span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 46px;"></div><div class="CodeMirror-gutters" style="height: 46px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>全自动化构建</span></font></strong></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>一段时间后完成编译</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h1 id='2make和makefile'><span>2.make和makefile</span></h1><h2 id='区别'><span>区别</span></h2><p><span>make是命令,而makefile(或Makefile)是当前项目目录下的文件</span></p><p><span>make命令会在当前目录下按顺序找寻文件名为“GNUmakefile”、“makefile”、“Makefile”的文件,,找到了就解释这个文件: 根据规则调用编译器、汇编器、链接器产生最后的输出</span></p><h2 id='makefile的简单编写'><span>makefile的简单编写</span></h2><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>例如有一个test.c文件(功能是打印Hello World)需要编译,可以这样写makefile:</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation"><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.c</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">gcc</span> test.c <span class="cm-attribute">-o</span> test <span class="cm-comment">#必须按tab键来分隔,否则会提示missing separator</span></span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 46px;"></div><div class="CodeMirror-gutters" style="height: 46px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>make命令执行后,成功生成test可执行文件,并且./test命令让test打印了Hello World!字符串:</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h3 id='依赖关系和依赖方法'><span>依赖关系和依赖方法</span></h3><p><span>上述的makefile文件的&quot;test:test.c&quot;为</span><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>依赖关系</span></font></strong><span>,表示test可执行文件</span><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>依赖于</span></font></strong><span>test.c文件</span></p><p><strong><u><font style="color:#fe2c24;background-color:#fef2f0;"><span>依赖关系必须有依赖方法</span></font></u></strong><span>,&quot;gcc test.c -o test&quot;为</span><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>依赖方法</span></font></strong><span>,必须按tab键来开头</span></p><h3 id='清理方法'><span>清理方法</span></h3><p><span>生成test可执行文件后,再次使用make会发现无法再次编译test.c,make命令会提示&quot;up to date&quot;,即最新的</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>一般情况下需要清理掉test可执行文件后才能重新make,这里</span><strong><span>不建议手动执行rm命令,出错风险较大,建议将rm*</span></strong><span>*写到makefile中**</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="cpp"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="cpp"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation"><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-variable">test</span>:<span class="cm-variable">test</span>.<span class="cm-variable">c</span></span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-variable">gcc</span> <span class="cm-variable">test</span>.<span class="cm-variable">c</span> <span class="cm-operator">-</span><span class="cm-variable">o</span> <span class="cm-variable">test</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-variable">clean</span>:<span class="cm-variable">#clean没有依赖关系</span>,:<span class="cm-variable">的右侧不用写</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-variable">rm</span> <span class="cm-operator">-</span><span class="cm-variable">rf</span> <span class="cm-variable">test</span></span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 92px;"></div><div class="CodeMirror-gutters" style="height: 92px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>使用make clean对可执行文件进行清除: </span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation"><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-builtin">make</span> clean</span></pre></div></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 23px;"></div><div class="CodeMirror-gutters" style="height: 23px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>之后就能继续编译test.c</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>会发现执行make clean时,make会找makefile中的&quot;clean&quot;字符串,之后执行,现将clean改成step,看看执行make step能否清除可执行文件</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation"><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.c</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">gcc</span> test.c <span class="cm-attribute">-o</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">step:</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 92px;"></div><div class="CodeMirror-gutters" style="height: 92px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>会发现仍然可以</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h3 id='演示makefile中的多个依赖关系'><span>演示makefile中的多个依赖关系</span></h3><p><span>这里可将生成可执行文件的步骤进行拆解:预处理→编译→汇编→连接</span></p><p><span>注意:依赖关系写完后紧接着写依赖方法</span></p><p><span>依赖关系图:</span></p><p><img src="data:image;base64,iVBORw0KGgoAAAANSUhEUgAABeAAAABICAYAAACeNVUgAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAAGYktHRAD/AP8A/6C9p5MAAAAHdElNRQfpBhcLJiU7nsLuAAAAAW9yTlQBz6J3mgAAMCdJREFUeNrt3XlwHNd9J/Dv3DMY3CdBCDxEADxEUWQoWiQg64ov0k7Z2Yrs3TiJ4iQGE1dWZJKSnU3kcmqtbFJmyiHXu7HJZHcjbxzHx66lwAJkO1lHtgCRIMUTPDEgiWsGA2AOzH1099s/gG7OADM4CECcGXw/VVNSETPd73U//AD83uvf0wkhBBbh6tWreOSRRxbzVqJVx/FIuYTjkXIJxyPlEo5HyiUcj5RLOB4pl3A8Ui7heKRcslLjUf+gO0JEREREREREREREVIiYgCciIiIiIiIiIiIiWgVMwBMRERERERERERERrQIm4ImIiIiIiIiIiIiIVgET8EREREREREREREREq4AJeCIiIiIiIiIiIiKiVcAEPBERERERERERERHRKmACnoiIiIiIiIiIiIhoFTABT0RERERERERERES0CpiAJyIiIiIiIiIiIiJaBUzAExERERERERERERGtAibgiYiIiIiIiIiIiIhWga6vr0886EYQERERERERERERERUanRBiUQn4q1ev4pFHHnnQ7SUCwPFIuYXjkXIJxyPlEo5HyiUcj5RLOB4pl3A8Ui7heKRcslLjkSVoiIiIiIiIiIiIiIhWARPwRERERERERERERESrgAl4IiIiIiIiIiIiIqJVwAQ8EREREREREREREdEqYAKeiIiIiIiIiIiIiGgVMAFPRERERERERERERLQKmIAnIiIiIiIiIiIiIloFTMATEREREREREREREa0CJuCJiIiIiIiIiIiIiFYBE/BERERERERERERERKuACXgiIiIiIiIiIiIiolXABDwREdGMrsM66HQ66A53PeimEBEREREREVEBYAKeiIiIiIiIiIiIiGgVMAFPRERERERERERERLQKjA+6AURERLni4EkBcfJBt4KIiIiIiIiICkVBr4CfruV7GPlYyTef206Fx+FwPOgm0CrL55iTz22n/Mf4WJjyOa7kc9upsDA+FoZ8jin53HYqbIyPlM/xKZ/b/iAVcALegVt9D7oNa7HtVIj6j70A7klZyPI55uRz26kQMD4WonyOK/ncdio0jI+FIJ9jSj63nQod4+Nal8/xKZ/b/mAVcAK+H9d6HnQb1mLbqRAd/MROnDrUhhOcqC9Q+Rxz8rntVAgYHwtRPseVfG47FRrGx0KQzzEln9tOhY7xca3L5/iUz21/sAo3Ae+4hbydlMnntlNhOvgJtKMHR5vbOFNfiPI55uRz26kwMD4WnnyOK/ncdio8jI/5L59jSj63nQof4+Pals/xKZ/b/oAVVgLecQJtOh10Oh10zUcxPSlzCofUf9NeC9QqcnThxOE2tLWlf66trQ2HT3RhUZOUDge6MhxDpx5j9kFWqu3zNwqOrsNoa2ubdcw2tLUdxokuTr9SNgfxiXYA6MGpQzq0cao+/zFeZjRdz04HHX8TpkVjfCwIjIkr0xaiNIyPeYnxcDENQ9eJTH9Xz/Tv8AnwT2vKRFGUmdeH8cXT38Jf//XzCP3Dp3Hw6/0QQiz6OEIIKIoCWZa1lyRJkCQJsiwveCwhRNpnZ7/UY0mStKh2pR4vHo8v+jPJZBLJZHJJfV/stVFf93N97peiKEgkEpAkae4XGVsfGHVMxONxKIryQBuyKH19fYt964PTf1y0AgILvtpFZ+YDiOPtrYv4fKtoP96fvR2d7YtoR6tIO8Sy275C16b1uOi/n+O/x/JiPBacTtE+a6x05sNgeQ/k5XhkvMzSnJnPtt9XpM0JeTke8x7jYzZ5Mx4ZE1emLTkub8ZjQWF8zCZnxyPj4XwXR3Quqm/Tr9b2/BnvOTseC4SiKEKSJBEOh4XX6xXj4+NibOymON3RITo6OsT3v/990fY73xQdN5ILHkuWZRGNRoXf7xcTExPC7XaLsbExMT4+Ljwej/D7/SIcDgtZlrN+PhQKibGxMeFyuea8xsbGhNvtFh6PR0xNTYlgMCgSiYRQFCXj8SRJEoFAQDve1atXhc/ny/r+1M9cvXpVXLx4USQSibSv3894VBRFyLIs4vG4mJqaEmNjY2JwcFAMDQ1p18fr9YpgMCgikYhIJpPztnGpJEkSExMT4ty5c+LWrVsimZx1LxlbHwhFUUQikRBut1v89Kc/FRMTE0u+7ysVH3VCLG7q5+rVq3jkkUcWldTPCV2HoTt0CkA7OsVJHFz4AzjcdginegCgFa3tL+PVlw6iqeneOxyOLhx7QX0P0Hq8H91HmuYeR3cIpwCgtR2dr76EgykHcTi68MYLh3C0B9nbtuS2L8BxAm3qLFVrO46//BI+erAJWqscDnQdewGH1I61d0KcXPZZV1XejceV5nAsbmZzpfUfwwuHTuFeya+Z75WTB9G0jMPmu7wfj4yXKYfTYfpwuR8Hs8n78bhcjI85JS/HI2PiyrQlB+XleFxJjI85JS/GI+NhCgdOtDXPnBOZ/65W23bsFRxVO5gnMTIvxuNqWqX4aDQaUVlZCUVREA6H4XK5MDIygmg0CpPJhBqLC/FkAxJmM4QQ+Mu//AHEjl/GN//2lzLGR0mSEAqFMDk5CafTiXA4DACwWq2orKxETU0NdDod9Ho9dDodqqqqYDAY0o4hyzKi0SiCwSCuXLkCRVG0Fcxqm0tLS1FbWwuTyQS9Xg8hBEpLS2Gz2bT3pR4vHA4jGAwCAHQ6HbxeL1paWmA2mzNeF1mWEQqFcPfuXSQSCezevRsmk0n7+lLHo6IoSCaT8Hq9uHPnDrxeL4QQMJlMMBqNEELAZrOhtrYWpaWl0Ov1MBgMsNlsGft0P2RZhsfjwcDAAMrLy9Hc3Ayj0Zj5zXkcW8Wdf8V3eyfxN38ziM//vz/CR2eNr1wjZp608Hg8uHz5Mvbs2YPq6mro9YsvCLNi8fG9zvi/ZzrblzQDo616XMRKnv7jrdnfu6jz9ovjrRBobRUZF1kuse0LtHb6XItY3T5vv3JM3o3HFTVrJVGOvFpzfdCsorwfj4yXc/vGFfB5ivEx1+TleGRMXJm25KC8HI8rhvEx1+TFeGQ8zNC3RY7b1BWjefCUeV6Mx1WzOvHRbDaLr33ta6Kjo0P88z//s/jIRz6S8X1btmwR3/zmN0VHR4f4x3/8R1FZWZlxnMmyLLxer7hw4YL4/ve/L37605+K/v5+4Xa7xcTEhBgcHBSXLl0SQ0NDYnR0VAwODoqxsbE5K+ElSRLBYFA4nU7R0dEh+vv7tZXv6ip29Vg3b94Uo6Ojwul0CofDIcLh8JzVw5IkiampKXHp0iVx+/ZtMTo6Kq5fvy7cbnfWVfiSJAm/3y8uXrwoent7l7UCXj1/b2+v+MEPfiD+5V/+RfT39wu/3y+i0aiIxWLaEwMDAwPi/PnzYnBwULhcLjE6Oip8Pl/Wdi6FJEnC7XaLnp4ece3atbkr4NOGXH7GVkVRRGToXdHR0SE+8pEvir8fHBSSJC372q0mRVFEPB4XTqdTvPnmm/OOy2xWKj4WVg34++U4gVdOTf9ve2c3jiywFKPpyKs43goAPTh6LL3CkePWzHYErTvQnP0IONItILq7seoLLLuOzcxeteL4q0fmXWXSdORltE+/FdfeYNG63HUQJ4WAeBCv/uNondWa1vbj6OwXGWZXqSAVcrykAsD4SO+xAo2JudQWWimMj7TKCjQezu5b5lWlGTuI7s726f/vOYpjuVgYmWasTnyMx+P43d/9XRw4cAD19fVob2/HjRs3EIlEtFrk0s2vomZgAF/72tcAACUlJfj9L53Ad8558PaLW7QWqvWro9EoBgYGsHHjRuzbtw+bN29GdXU1qqqq0NDQgK1bt8JqtWorv51OJ2KxWNae63Q6VFRUoKamRnvV1taioaEB27dvR21trfbeoqIiDA8PI5lMZj2ez+eD0WhEWVkZXC4XEonEqt45WZYRCARw7tw5uFwutLS0YP/+/di8eTNKS0thtVphsVhgtVpRWlqKjRs3Yvv27dDpdEgkEtDpdJicnEQoFFq1uvDLliOxVcysJL92ugu//uu/jh/96CyUTLXuKSsm4AF0HVPLsxzHS4v64d2EIy/P/DA99VpObjKg9e019Tv15QW/UbUfPN3dOMlfhmmOLhzWNtzA9GOXnf3oPnkEBzlc1oxCjpdE94/xca1iTCRaCOPjWlHI8VDrG9rx8lL+Tj740kwiDDj1Wi73kFaDoiiIRqOIxWIYHh7Gpk2bsHHjRthsNhgMBuj1P8Lntv4hTgM4e/YsLo/LaGzeid/55afRYhhK28hTCIFEIoFYLAaTyYTm5mYUFRXNHGe63IzBYIDFYkFFRQUMBgNu376NsbExeDweyLKcsY1q6Rm9Xp/2MhgMMJlMKCsrQ1lZGcwzJXJkWYbX6826kWU8HtfKrpSUlGB8fDzruVfi+obDYVy8eBGRSASPPfYYmpqaUFRUpJXNUTdhTSQSUBRF61dlZSXsdjsMBgPsdjsGBwfTJgvUvi70isVi8ybuU9sgyzKSyeT0xrYL9E39nKIoGAtuwn/89rfx3753Hn/2wfk3xp2eqGnE7//JZ7F161b8cWUUIzPnlyQJ5sb9C5bbST136ga2sizD7/djtO/n8Pv9EKIONY2Nc0oczf68JElIJpMLbn6a7bxL2Qg49fPatV7CxMr9nF+dHFPHudqOTBvxMgEPB9RJIOxsWXwdwuYdMys5+nArZbF4U8vO6f/pOYoXFrsD8arpgpp/b93RvLxD0ZrnOPEKZoYTWts70d99Ekf4l9MaU8jxkuj+MT6uVYUbE3OpLZTfGB/XisKNh2l9a//EEmu5N+Gjn9Qy8Dk9yUArTwiBWCyGyclJGI1GbN68GRaLRfv67Pj4q792EOvKbQgEAvB4PHMSeIqiwGKxoLi4GGazOWsi1Wg0ori4GNXV1di+fTuqqqqWVO86lU6ng81mg8VigV6vR3l5OYaHhzMmFwHAYDDAbDbDbDbDarXC5/PNuwJ/Odc2Ho/D4XAgEAjg0Ucfxfr167Wa82pd+snJSUxOTiIQCMDr9SKZTMLhcODMmTOw2WywWq0wGAwQQsDn82nJV7/fD6fTiZGRkbTX6OgoJiYmMDExgZGREbz11luIRCJz2mexWLRV9uq5JycnMTU1BZ/Ph0g8+6SEmrwNh8Pwep0YHA7AZDJhY6MdJr8foVAIU1NTcyY21MmRc+fOwb/5GfztV76CtrYaTLmn4PF44PF4YN/1KXzhC1+A7p0/yBhb1YmHSCQCr9eLiYkJTE5OwufzIRQKYWJiApUl6hi2wJBSt19tu9pn9dp7vV6EQiH4/f6sT0So5w2Hw/D5fNpn/TP9DQQCWcfc7POOj49rnw0EAohEIgsm4YUQ2jWfnJzE2NhYWr8BZHzyQx0rZ8+ehd/v1ybdvF4vHI65P7mYgEc/rqmbFCwlSd3UgulfC3pwrT/l3w+exL0nzQ6hWdeGtsMn0NX1gDY9mrGzhb/o0nJ04djMjkOtx/vRvcY3zVq71ka8JFoaxse1q4BjYi61hfIY4+PaUcDx8H77pnVxZjJh1iQDFTa1XIckSQgEAqiurkZRUVFK0nxufGw0GBCJRDA2Nobi4mLIsqwlDoUQ2mr1TZs2IRwOz7uy3Gw2o6mpCY2NjcveZFSv18NisWiTB+qq/mxJTaPRqG3eWlFRAafTOW/y9H4oioJAIIChoSFs3rwZ69atg8lk0p4UGBwcxM9//nP09PTgwoUL8Pv9WmJZvb5Go1HbhLWoqAhOp1O75uPj47hx4wauX7+e9vL7/dDpdFAUBTdu3NCeQJjd/8rKSgSDQZw5cwY/+9nP0Nvbi9HRUW1M3E3WZ+1XJBKBw+FAT08P3n77FL708d/A888/j7/54QVMTU0hGo0iFArB5XJlTMKbTCbYNj0Jz7Vr+NKXjuLPXn0Hly5dgtvtRsLeiN/8eBsOHTqUFlt/8pPbCMxMarjdbvT29uLtt9/GmTNncPnyZXg8HkSjUZSWlqKkrGLett+9exe9vb04ffo0Ll++DJfLhVgshkQigZGRkTlJeHUyZWxsDOfOnUN3dzfOnDmD69evIxAIIBqNIhqNYmxsLOM4Sj1vT08P3nnnHZw9exY3btxAKBRCMBicd/ypY8bpdOL06dPamLl06ZJWwqm4uBhOpzPjBIK6Ut5qtSIajWJoaAi3bt3CyMjI3O+lFf0uyHM9R5u1oLbw65A2W9k36yfpwZP96DzeOjOb34OeU0dx6FAzmnU66NracPi9msV33ML0ZH0ruACelqXrNZwC0N65yJqHVPAKLl4S3S/GR0JhxsRcagvlKcbHNang4qH2NzUXtdHiqStqASASiaCysjI9UZshPhoMBmzYsAFPPvkk9uzZA7vdriXOU79vrFYrgOlEeDKZhCzLGct7GI1GGAyGZSXfVWoSXj2/uto323vV2usmkwmxWAzhcHjFaqyrkxujo6OwWCzYtGmTViJHkiQ4nU5cunQJFRUVaGtrw1NPPYWamhqYTCaEQiH4fD7U1tbCYDDAaDRqkwtTU1NQFAVGoxFbtmzBU089hWeeeUZ7Pfvss9ixYwcsFgvcbjei0ShaWlq0Vfeq+vp6hEIh9Pb2Qq/XY+/evXj66aexadMmrVyLad2jam/S+hWPxzE8PIxr166hvLwc+/dvQ8PM17pe+ffYv38/ent7cfHiRRw6dAhGo1EbF9/5zndw9uxZDA8P49ix/4VfefllnD9/HneiduzduxfV1dWQJAmlG3fiT448jz0A1Nj6jW+8hJ+98QZ+/M47eOmr/4AhScKePXvwgQ98AG1tbaioqLg3ptbvzdj2WCyG0dFR9PX1oaioCHv37sW+fftQW1uLeDwOIQT0en3axIF6L71eL959913Isoxdu3bhmWeewd69e2E0GtNKukxMTKSNO5EyadDX14eysjK0tbXhueeew+7du7VzZqvxr55/fHwc7777LoxGI/bt24fnnnsO73//+9HY2Ki1XafTYWxsLOPEV11dHRRFwaVLl3Djxg0oioKGhoa53xsr8h1AszTh4JFudIt+9Hcex/H21nsbD/X04NTMTNPhLv7ZQvmh67VTaD3ej5N8ZJhWHOMl5TfGR1pZuRQTc6ktlI8YH2l5ci8G9XEJOy2SmgxWS2uUlJSkJeCzxUe1jvvsEjNqaZdkMqmVNlFX98ZiMSSTSW11derK+ZWi1+u12u4GgwHBYHDec5hMJm0VfGVlJUZGRubdvHWp1zYej8Pv96O+vl5b4S+EQDgcxq1bt1BTU4NHH30UVVVVKCoqQnFxsTZxYDAYtLI8au18tY632ic1MW+1WrWX2WyGLMsIBoO4e/cuHnroIdTV1c2pga7T6dDX14fi4mI89thjqK+vR3FxMSoqKrR6+vaqhpn7ey+ZLEkS7ty5g+HhYTQ0NGDnzp2orS2HMeXYk5OTGBgYAAA8/PDDGa+P0WjEyZMntUSxubweFRUVWLduHWpqamC1lmHTIx/EV3/6D7j6+l/heHsrntm0CQAw2NeHb3/1j/GZD/8pXrkSg91uR1FREWpqalBeXg6TyYSims3qndDOKcsyQqEQHA4H6urqsHv3btTX16OsrAx1dXWoq6tDUVERLBaL9iSAei9DoRAGBwdhNpuxe/duPPTQQygpKUFxcTEaGhpQUlICk8kEs9mM0dFRxONx7bzqPgB37txBZWUldu3apT1tUlJSgoaGBu3Jk2wJ+FAohP7+fpSUlGDPnj1Yt24dioqKYLPZUFFRgdraWm0yyel0pp1fVVZWhsHBQfh8Pjz22GN4/PHH0dw8dxU0E/Ap2jvvb3fr7Cs6mtB08AiOnOxGtxAQoh+dx9vROrMj8alDzTj8nhSCm/VIH9FSfaKTK5coTeHGS6IlYnwkFHpMzKW2UF5hfFyTCi4eamVyiJZGTfjJsqytHtfcR3y0Wq0oLS2F2+2Gx+NBPB5HLBZDIBCAz+eDz+dDMBjUSnYkEokVS8SrG7WqCevUZHW296sTCeqmruoK85W4rpIkIRKJoKqqSqvhLkkS/H4/IpEItmzZom3GqrYHAPx+P6qqqubcj0gkoq0mz0ZRFIRCIdy6dQtFRUVobm6es/odAEKhEGKxGJqammC329PaYDQaZ67J9OavqUlsg8GAdevWYfv27di2bRtsNhv0+nvtUWPriy++iP379+OLX/wirl+/jmQyCSEEPvWpT2Hfvn1obm7G17/+dW0D3J4/aNHun8lk0voeiVRg0wd+D0dOduNzX/kKnnxyLx7f3ogdOwDgHP7ul7ZpsVWv12u1/fUGte670K5LPB5HMBhEIpFI2whXPa/VaoXJZILL5UIoFEIoFIKiKEgmk0gkEpiYmMCGDRtQVlaWtqrfYDBoJYLU6zc5OaltlppIJBCPxxEIBLB58+a0ew5MT0aoEyiz761aekadzNmyZQtKSkrSJlTUJz7UvlitVng8njnjWJZlOBwObNq0CQ0NDbBardqEVSom4NGMHTNT6as/o92Eg0dOoru7/95u6K+cWL1H51J+WeBsPS3HwYNL226IClUBx0ui+8T4uJat1ZiYS22hXMb4uJYUcjy817ee+1jV1vWaWmRnJ1jBZm1RE9QGg2HOKun7iY86nQ5lZWXYtm0bKioq4Ha7cevWLdy9exeTk5OIx+OIRqMIBoMIBAKYmppasaS3en5geqX2Yo6priI3Go0oKyuDy+XKugnnUsmyDL1ej+LiYm11czKZRCQSgd1uR0VFxZza7JIkpZWfUe+RLMvweDwoKSnJmoBX64w7nU4EAgG0tLRo554tFAqhrKwMpaWlc9qgJpWB6acEAAHMjBO1Zv769etRWlo6c94n8OIbf4/vfe97+LXmoLaqXU1sZ5oICYVCqKiomPPURern1L6rT2lMl1gpwsYd78M3vvE9HNs//f7U2Ko9ZeB3z+lzIpFAMBhESUkJysrKMp5XXcX+0EMPwWKxaAnwRCIBWZaxbt26jElrg8EAk8mkbQg8MTGhXQf1SRCz2Yyampo532ezP59KPb+iKHj00UdRX1+vja3Ul6IoMJvN2nEmJyfnlKGZmpqCwWBAY2PjzH3NjAl4NEHbZP27b7xHfzw04cjL6q4y17B6i9OX98sCEVG6Qo6XRERLtdZjYi61hYgerEKOh0346CfVTP9rWNpiewduqQXk2z8BTkmtHWrNaGA60TrfhqlLoa7CXb9+PXbv3o0nnngCTU1NMJlMGBkZweDgIOLxuFYz2+PxwO/3r2hJGkmSMiY6M7VVLd0BAHa7PS15utzrm5roVOuEWywW2Gy2Oe0TQmh166urq9OS0IFAAF6vNy0xP/uzyWQSgUAAAwMDaGhoQH19fdZrkEwmUVpamvXr6clpgdQ7oybIFUVBNBpFIKCHvmS6dM7l3ndxY2gIbrdbS7xnupaSJM17/tR9BVIT+up/N2zYh8/85y/DbrfDfO4mnCnXN5FIYLTv5+qRtOsjSRKSyeScFeSpTCYTtm3bpk1eqG1NJpMwm82zNimee03UBHggEICiKGnnVTfVzdbf2RMCqfdVp9PBbrcjFArB7/dnfIXDYUiSBLPZjEgkMuf7KR6Po6KiYu6TLrPvPQgHXzo+XU+u5yiOLfYnquME2toO40RqzTnHCbS1tUHXtoQZ+NYdWL39UZf6y0IXDmub2nAdExHNVbjxkoho6QoyJuZSW4gobxRkPJzR9NFPztSfP4VDS6h34zjxAo72TP9/+yeYfl9r1KSfzWZbUjmYxbxPLQlis9lQVVWFLVu2YO/evdi1a1facWw2GwYGBpZdf11N9qp11mfXqM/GYDBo9dOLiorg9Xoz1tBealv0ej3Ky8sRi8W066XX67Xa3+oGuAC0ZLYkSbDZbFo5EnUF9NWrV2G327Mm4FNLz1itVjQ3N8NisczbvoUSsdmkrrS/cOECuru7cevqT/DVz34Wv//pZ/GFbw8gGo1qx85W19zi/i6efvpzc2Lrpz/9afykdwjxlPeq98lkMml7DSibPoR/+qd/wv/51z/EbklCPB6Hz+fD1atXEfcNz3xal9ZudcJlvn4bjca0Uj/qkxTqfgHZqEl09Z6p7VYnuhYaj/M92RAIBPD222+ju7s76+v111/HmTNncO3atYzHkWV5pmTQ/Cn2NZCA78OCT8E1HYE6eX7qUBsWzD07unC4+Sh6ek7h6CspM/xNLdjZ0wP0HMULCxxEexRtZwuyP4m2iLYv2LWXMd21Uzi0wC8xjhOvTO9C3wPs+CifjyNae9Z2vCQiSrdGY+KKt4WI8t8ajYcpfXtVq3dzCG2LWKzm6DqMF7TseydOMv++pqj1qtWyMcFgcFFlW9RVvZlKi6ilQmZTN0g1m82w2+3aJpbqiuBQKIRoNLqsVfDqamF108r5yrXMZjabtRIgFRUVcDqdyy6LYzQaUVNTA4/Ho5WjURPzdXV1iMfjSCaTkGUZPp8PkUgENpsN27dvh16vhyzLiMViuHz5MoLBILZu3Qqr1TrnPGpCfGxsDH6/H83NzYvq+0KJ2Huuod9x7xpHo1GMjY3h7NmziMViaG5uxlOfOoa/+K3p97zxp1+Er2yDlujOeE99t/FnH/kLvPPO382Jrc0XLgBTN3FnfO4kiM1mQ1lZGWKxGC52/xB37tzByJQProEBXLp0CadPn0Y0GsUjGypmPnFVi63qeL+fMaY+ybCYz6or1lP7fr/nTT1/VVUVnnnmGXzwgx/M+GptbcWHP/xhfOhDH8Ljjz8+p8yMWmJnIYWbgG/eMTNL3YOjL8xKPDsccxLRB092ziSqe3C0uQ1th7vgcKS/y+FwoOtwG9qaD00nqlvb0dl9JOWH/UG8NPODuedo88wxMOsYXThxuA2HZn5XyDgTvpS2dx3WBmDmyfiDONmpPpp3FM2zVxjMHLPrcBuatV8QXgb3SyJaQxgviYjuWfMxcYXaQkT5b83Hw3uajryq1ZzvOdoM3czf1bN6B0fXCRxua0PzoVPoAYDW4+hn9n3N0ev12saNFRUV8Pv9C5ZeEUIgFovB7Xbj9OnTCIVCWmJRLSnj8/kWTF4bjUZtpTcwXSc7U9mMpUokEvB4PACQsc73fNdCXQVvMpm0DWLvl5rsVVehx2IxANOJfvXYkUgELpcL58+fx9mzZ+Hz+ZBIJKDT6TA5OYmBgQG8/fbbmJycxPbt21FXV5exbE0ymUQwGITD4cC6devQ0NCQtdTJ7DbOy2qbeWqnF0d/879iCNOrqMPhMO6cO4doZSX27duHhx9+GOXl5fj4/5iOrUbjOQz8689w2eFFIBBIO2QoFMLU3ev43ye/i+8CwIHPzomtv/Wf9gAAwsN9+PNXL+POnXufVxQFd+9ewZ//3sfwoc98GS+++CJ+eDmA4eFhJJNJNDc348CBA9jQ9r602OqZmfgoLi5G8vZtOOYZZ7Isp9WdVyePsk4mIL19ar331LFlt9u1yaFssj0poI5NAFr5okyv1K/d79MN6kkXpa+vb7FvzRmd7RBA5ld7Z6ZP9Ivjrdk/k/pqbT8u+kXmY3S2ty7iGK2i/Xj/8tve2b5An2Za1dkuWpfVr9ySj+ORClchjEfGy1nHmi+g5rhCGI9UOPJ1PDImrkxbck2+jkcqTPkyHhkPZ7Xr+GLapfavMy/+thYif8ZjPonH42JiYkKMjo6KK1euCI/HIxRFyfp+WZaF1+sVp0+fFj/60Y9ENBoVQgghSZIIBoNibGxMXLlyRQQCgXmPox4rEAiI0dFR8frrrwu32y1kWU47ntPpFG+88caC7VIURcRiMeFyuURXV5fo6ekR8Xhc+7okSWJqakpcunRJnDlzJu1rqcdQ+zAyMiJGR0eFz+cTFy9eFL29vSKRSKS9f77xqCiKCIfDwu12C6fTKW7fvi2i0ahQFEVEIhFx7do18eMf/1j88Ic/FG+99ZYYHBwU4XBY3Lp1S/zkJz8RHR0d4s033xS9vb3C7XaLZDKZ8TySJAmPxyP+7d/+bVHXSZIk4Xa7RU9Pj7h27VrG48qyLKLRqHA6neLP/12FFisOHDggOjo6REdHh3j44YfFf/ift4UkSbM+3S/+75EPau/73Oc+lxZvvvWtb4mOjg7xsY99TOz55J+IGxnPf0eMnP+Z6OjoELW1tdpnv/zlL4uOjg7x/PPPz/zbE+K3/+qqiMViIhaLiXg8LpLJpNb/1Nj6zDPPiI6ODvH666+L9evXi99+LZp1TE5NTYmbN2+KQCAgEomECAQCwul0ip6enqzXV1EUkUwmhcvlEj/+8Y/F+fPnRSKREMlkUkxNTQmn0yneeustEQqFsp43FAoJp9Mp3nzzTe17IZlMCr/fL0ZHR0VPT4+YmprKen+9Xq+QJEkkEom0+yJJkhgfHxe9vb3i0qVLc8bxbIW7Ah7AwZP96DzePjM7o2pFa2s7dmQsEteEI90C/f2dON7eitbWWV9ubUVr+3F09gt0nzyS5TG3Jhw82X3vGJh7jPbjnejv78bJeZaZL73t82s6eBLdYuaYWfvVP0+/iKiQMV4SEd3DmLgybSGi/Md4OKtdR7ohtL+r57QMrVrbBLpPHuTf1muYwWDQVvdWVlbOW/9czNS2DofDcLlcqK+v11Zaq6uDhRCoqqqCz+fLWKJm9vGSySQmJycBTJcXuZ9Vu2Km9nsoFILT6UQsFsOGDRsWtQo8lVof3Gw2a08HqCuhl0qt+a3+v81mg9/vRzwe12q0P/XUU/jFX/xFPPHEE2hoaIDNZsPmzZvx/ve/Hx/4wAfw9NNPY/fu3aiurs7YF7VuvNvthsfjQXNzM0pLS+9/5XMGuz5zDN/7i99EKwCXyzXzr3Y899ynsH2bNcO5mvDxr76JJ554FI3VdtTVzfpydTWKazbgk4f/GN/+z7+BLRnPugHVO96HnTub8KvPNOF9M/+qrv6v2bkTv/L5/47r13+Ov/ujHbBYLNp9S63dnhpbT58+jWAwCL2+BJ///H/B5nWBOU9ppI7HmzdvIplMpj0l0tDQgMnJybTa/ani8TiCwSBCoRBqampgMBjSVs/X19fD6/VmfMpECJHx+0WtK6+ef3x8POtTKjqdDj6fD2fPnoXb7b7vEko6scgRf/XqVTzyyCP3dRKilcbxSLmE45FyCccj5RKOR8olHI+USzgeKZdwPK6OaDSKQCAAWZa10imlpaVpyUxgurZ1IBDAxYsXIcsyDhw4kJbwTSQSWvkZNQFdVFSkHSf1WGKmlrjX68XFixdRV1eHPXv2aElrWZYRjUYRDAbR39+PXbt2Za1rLkkSQqEQxsfHcf36dWzYsAE7d+5M24RULZ1y9+5dxGIx7N69O61MyOx2hcNhbVNYt9sNSZKwe/futBraixmP8XgcY2Nj2gac6qa06oaes0vkqJMYiqLMO4GgJos9Hg/Onj2Lqqoq/MIv/AJsNtu87ZFlGR6PBwMDAygvL0dzc/Oc8yiKot3Ld999F08++STKysq08kOBQEArp7Ju3bq066i+Z3h4GCUlJdq1e+yxx2AymSDLMiYnJ+FwOFBdXY0tW7ZkPH8ymYTX68WFCxewf/9+VFRUQJZlBAIBxGIxxONx1NfXZ9zYNNMYUe9rKBSCJEmQJAnV1dXaZrfqeaempnD+/HkYDAYcOHAAVqtVS6wnEgkoioKSkhIUFxen3TtJkuDxeHDu3DmUlpbife97n1Y2JvXzyWQSVVVVKCoq0vYEEELA7/cjEolAr9fjypUr2LNnD6qrq6HX6xGLxRAMBpFMJrXz2+12GAwGbeJLURSMj4/j7t278Hq9OHDgACoqKqDT6SDLMrxeL+7evQuLxYLt27fPWwt+adNWRERERERERERENC+LxQKj0Yh4PA6j0QhJkhAOh2GxWGAwGLRkbygUwvXr1xGNRrFr1y4UFxenJTtNJhPsdjvcbjeKiooQj8chy7K2MllNWEqSpNVqv3nzJqxWK5qamrImBdUksZoQB6AlHZPJJOLxOFwuF27fvo3a2lq0tLRkTK4vhroKPpFIQJKkZW/EarFYUFdXh+HhYS3hKkmSVm9+9iSH2ieXy4UNGzZkvSZiZqNZWZaxa9cu1NTUaAnu2SRJypioXiq9Xq8lfQ0GAwwGg7bhqNq3SCSCixcvorq6WutfIpFYdm3/2fdITYwLIbQ2qV9LvUbqKnR18kNRFOj1ephMJsTjca1PsiwjEong+vXrCIfD2LNnj3bt1c151X4mEgnE43FtjCWTSfj9fly6dAkGgwHbtm1LG3/qBqx6vR5msxmJRAImkwlGoxGKoiAQCODdd9/F7t27M4631Hunnl/d0FhNsEciEZw/fx7JZBItLS1L2oB4NibgiYiIiIiIiIiIVpBer0d5eTlkWYbT6YTFYoHdbkcsFoMsy4jH4/B6vRgbG4PJZMKjjz6KhoaGORuC6nQ62O121NbW4u7du5BlGXa7HVarVUtyJhIJBINBeDweBAIBVFdXY9u2bSgvL8+aMFQUBcFgMO3f1GP5/X6Mj49rZWe2bt06Z2JgqQwGA6xWq9b35bJardi4cSMmJiYwMjICo9GIkpISWCwWLbmrTnoEg0H4/X5thXamkjJqEl/dsNVisSAcDiMSiWQ8//Xr1/H444+jqKho2X1RV+5PTk7CZrNp5VgkScLk5CTcbjesVivq6+uh1+ths9nmbMS6nPtit9shyzKSyWRan2dfIzXJLssyysrKtIR3RUUFhoaGkEwmUVRUhGg0CkmSMDU1BafTiUQiga1bt2LdunXa+Nbr9SgrK4PL5YLf74fdbtc26FWf4nC5XLDZbNi5cyeqqqrSVscbDAaUlZVpG8Wq51UnocbGxlBcXIySkpKM10r9/nS5XPB6vSguLtYmD+LxOPx+P8bGxnD37l08++yz2LJly7wr3BfCBDwREREREREREdEKMxgMqK6uht1uh8vlwtDQkFZqxGg0oqioCA8//DAeeughFBcXZy2PotPpUFxcjK1bt8Ln82FsbAwjIyOIRCKQJAlGoxFWqxXl5eVoaWlBTU2NVnM9lRACLpcLN2/ezFpzWz1WbW0t6uvrUVlZmXWltxACIyMjGBkZwfr16xdM0JvNZvh8Pq3czoYNG5Z1fc1mM+rr61FVVQWv14vx8XEMDw9rCWB1hbbdbkddXZ12L7K1MxgM4vz581oieL7+WCwWbQW6JEno6+tDNBpFdXV11s/4/X5cuHBBW0Gu0uv1qKqqgslkwtDQEG7fvo1oNKol2zdu3IjGxkZYrVbcvn0bAwMDKCsr0z4vSRKuXLmCeDyOdevWZW331NQULly4oK06V++hJEm4c+cORkZG5pQ1AqbHcVFRERobG1FSUoJ4PI5QKITGxkYYDAZYLBZtMmR4eBhTU1PaivTKyko0Njaiurp6TgLbaDSivr4eNpsNIyMjmJycRDQa1Sadmpub8dBDD2mlYTLd/8bGRoyPj2NoaAhTU1OQZVmr+6+OrytXrmir9FP7pp6/uLgYIyMjGBwcRDQahaIosNlsqK+vR0lJCZqbm+e0XZIkXL9+HcFgEA8//PCCY5814CkvcTxSLuF4pFzC8Ui5hOORcgnHI+USjkfKJRyP7w1ZliHLMhRFgRBCS3SqZUcWu7pcUZS046QeSy39MTvxnkqt1Z0tHbiUYwHTpUJkWU7beHah9qsJ7kyfud/xmO26ANDqwmeqD5+pbYtJlaqr5NV64ernjEZj1okUdZU5gKwTJGqJHrUNs8eIev/UyYWlnD/12qvlXOLxOEZGRnDt2jVs3749bRPg1HapZYn0ej0ikQgGBgbQ2tqatieAoihzSgypG6bOd90X0++F7n3qeVM/C0C7NpmuuXp+9fsz9fx6vR43b97Ezp07M35GPa7BYFhwdTxXwBMREREREREREa2i1ITgciyURF7IfAna+2EymZZUmkOv12sbaa6k5V6X5bRNTcYvZKExoNPpFk7kZrh/iz3/7P6pJYfsdju2bt2K9evXaxuZzqbuDxCJROByubRa8bOPfz/7BCym3wv1a77zLnRt1E2SM31fZEv+L/aaq5iAJyIiIiIiIiIiIlpD1JXnOp0OZWVl2gr9TKvO1dr94+PjuH37tlaPnhaHCXgiIiIiIiIiIiKiNcRgMMBsNmu134uKimCxWLSSMWqCXq357vV6MTU1haqqKrS0tCxr1fpao+vr61tUDXgiIiIiIiIiIiIiKgxqLXOv1wuv14tQKIR4PK7VQ1f3ArBYLCguLkZlZSUqKiqybsxLmXETVspLHI+USzgeKZdwPFIu4XikXMLxSLmE45FyCccj5RKOxwdD3cA2dRNbVerGvGpCfq1YqfHIEjREREREREREREREa9RKbRJMmbFaPhERERERERERERHRKmACnoiIiIiIiIiIiIhoFTABT0RERERERERERES0CpiAJyIiIiIiIiIiIiJaBUzAExERERERERERERGtAibgiYiIiIiIiIiIiIhWARPwRERERERERERERESrgAl4IiIiIiIiIiIiIqJVwAQ8EREREREREREREdEq+P8MPdbJnt3HbwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyNS0wNi0yM1QxMTozODozNyswMDowMKa5mX8AAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjUtMDYtMjNUMTE6Mzg6MzcrMDA6MDDX5CHDAAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDI1LTA2LTIzVDExOjM4OjM3KzAwOjAwgPEAHAAAAABJRU5ErkJggg==" referrerpolicy="no-referrer"></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash" style="break-inside: unset;"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation" style=""><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.o</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> test.o <span class="cm-attribute">-o</span> test </span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.o:test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-c</span> test.s <span class="cm-attribute">-o</span> test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.s:test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-S</span> test.i <span class="cm-attribute">-o</span> test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.i:test.c</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-E</span> test.c <span class="cm-attribute">-o</span> test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span cm-text="" cm-zwsp="">
</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">clean:</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-comment">#其实可以写成rm -rf test test.o test.s test.i</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.i</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 346px;"></div><div class="CodeMirror-gutters" style="height: 346px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>make命令执行后,会产生test.i、test.o、test.s这些中间文件</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>可以使用make clean清除:</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h3 id='简单理解make的自动化推导'><span>简单理解make的自动化推导</span></h3><p><span>从上面的例子可以看出:test依赖于test.o,但没有后者,发现test.o依赖于test.s, 但没有后者, test.s依</span></p><p><span>赖于test.i, 但没有后者, 发现test.i依赖于test.c, test.c是有的,所以从gcc -E test.c -o test.i命令开始执</span></p><p><span>行</span></p><p><span>类似”递归”,像栈式结构</span></p><p><span>如果打乱顺序,make也能执行,例如</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash" style="break-inside: unset;"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation" style=""><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.o:test.s</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-c</span> test.s <span class="cm-attribute">-o</span> test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> test.o <span class="cm-attribute">-o</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.i:test.c</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-E</span> test.c <span class="cm-attribute">-o</span> test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.s:test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-S</span> test.i <span class="cm-attribute">-o</span> test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span cm-text="" cm-zwsp="">
</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">clean:</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.i</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 323px;"></div><div class="CodeMirror-gutters" style="height: 323px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>照样能按正确的顺序执行:</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h3 id='make的默认选项'><span>make的默认选项</span></h3><p><span>单独的一个make命令就是执行make的默认选项</span></p><p><span>生成可执行文件后,调换clean到第一行</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash" style="break-inside: unset;"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation" style=""><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">clean:</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span cm-text="" cm-zwsp="">
</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.o:test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-c</span> test.s <span class="cm-attribute">-o</span> test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> test.o <span class="cm-attribute">-o</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.i:test.c</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-E</span> test.c <span class="cm-attribute">-o</span> test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.s:test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span><span class="cm-builtin">gcc</span> <span class="cm-attribute">-S</span> test.i <span class="cm-attribute">-o</span> test.s</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 323px;"></div><div class="CodeMirror-gutters" style="height: 323px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>执行make命令后:</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p>&nbsp;</p><p><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>结论:make会自顶向下扫描makefile,遇到的第一个选项就是make的默认选项</span></font></strong></p><h2 id='判断可执行文件是否最新的方法'><span>判断可执行文件是否最新的方法</span></h2><p><span>上文提到了生成test可执行文件后,再次使用make会发现无法再次编译test.c,make命令会提示&quot;up to date&quot;,即最新的,那么make是如何判断可执行文件是否最新的呢?</span></p><p><span>答:</span><strong><span>比较*</span></strong><span>*</span><u><span>修改时间</span></u><strong></strong><span>,**可执行文件相对于源文件是老的,不需要重新编译;可执行文件相对于源文件是新的,可以重新编译</span></p><p><span>当修改test.c后就能再次执行make</span></p><p><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>结论:如果源文件文件没有更新过,make不允许反复编译这样是为了提高运行效率</span></font></strong></p><h2 id='linux下的三种时间类型'><span>Linux下的三种时间类型</span></h2><p><span>之前在</span><a href='https://zhangcoder.blog.csdn.net/article/details/145813382?spm=1011.2415.3001.5331'><span>OS6.【Linux】基本指令入门(5)</span></a><span>简单提到过</span></p><h3 id='stat命令'><span>stat命令</span></h3><p><span>其中一个是作用查看文件的时间(stat全称display file or file system </span><strong><span>stat</span></strong><span>us)</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>例如查看之前生成的可执行文件test</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>可以看到时间一共分为三种</span></p><h3 id='三种时间类型'><span>三种时间类型</span></h3><h4 id='修改时间modification-timemtime'><span>修改时间(Modification Time,mtime)</span></h4><p><span>文件=文件内容+文件属性,更改文件内容会更新修改时间</span></p><h4 id='改变时间change-timectime'><span>改变时间(Change Time,ctime)</span></h4><p><span>文件=文件内容+文件属性,更改文件属性会更新改变时间</span></p><p><span>删除或增加文件的内容modify和change会同时修改,因为文件大小属于文件属性</span></p><h4 id='访问时间access-time又称atime'><span>访问时间(Access Time,又称atime)</span></h4><p><span>1.从定义上来讲,更改文件内容或者文件属性都会改变访问时间,但某些Linux系统会因为访问时间修改</span></p><p><span>太过于频繁而修改访问时间的更新策略: 例如</span><strong><span>访问多次</span></strong><span>才会更改更新访问时间</span></p><p><span>2.touch在新建文件时会更新所有时间</span></p><h2 id='在不更改源文件的情况下让make反复编译'><span>在不更改源文件的情况下让make反复编译</span></h2><h3 id='方法1改变修改时间'><span>方法1:改变修改时间</span></h3><p><span>见如下图:</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h3 id='方法2-phony修饰'><span>方法2: .PHONY修饰</span></h3><p><span>phony adj.假的</span></p><p><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>.PHONY修饰的作用:依赖方法总是被执行</span></font></strong></p><p><span>使用 .PHONY 来声明伪目标,伪目标表示目标名并不代表真正的文件名,与实际存在的同名文件没有相互关系,因此</span><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>伪目标不管同名目标文件是否存在都会执行对应的生成指令</span></font></strong></p><p><span>例如以下写法:</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation" style=""><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">.PHONY:test</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.c</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">gcc</span> test.c <span class="cm-attribute">-o</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">clean:</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 115px;"></div><div class="CodeMirror-gutters" style="height: 115px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>认为test是伪目标,每次make都会执行gcc test.c -o test,而不管test是否更新过</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><p><span>如果test没有用.PHONY修饰,那就要看test的修改时间</span></p><p><span>但工程上不建议使用.PHONY修饰来可执行文件,建议用.PHONY修饰</span><strong><span>clean,使清理删除临时文件或目标文件的工作每次都被执行,以便达到可以进行重新编译的效果</span></strong><span>,例如:</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation" style=""><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.c</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">gcc</span> test.c <span class="cm-attribute">-o</span> test</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">.PHONY:clean</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">clean:</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 115px;"></div><div class="CodeMirror-gutters" style="height: 115px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>这样就能多次clean了:</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h3 id='伪目标的作用'><span>伪目标的作用</span></h3><ol start='' ><li><p><span>使目标对象无论如何都要重新生成</span></p></li><li><p><span>并不生成目标文件,而是为了执行一些指令 </span></p></li></ol><h2 id='简写符号'><span>简写符号</span></h2><h3 id='$和^'><span>$@和%^</span></h3><p><span>可以使用$@ %^来简写</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation" style=""><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.c</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">gcc</span> <span class="cm-def">$^</span> <span class="cm-attribute">-o</span> <span class="cm-def">$@</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">.PHONY:clean</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">clean:</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 115px;"></div><div class="CodeMirror-gutters" style="height: 115px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>其中</span><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>$@代表:前面的</span></font></strong><span>test,而</span><strong><font style="color:#fe2c24;background-color:#fef2f0;"><span>$^代表:后面的</span></font></strong><span>test.c</span></p><p><span>仍然能正常make</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h3><span>@</span></h3><p><span>使用@可以隐藏命令的执行细节</span></p><pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="bash"><div class="CodeMirror cm-s-inner cm-s-null-scroll CodeMirror-wrap" lang="bash"><div style="overflow: hidden; position: relative; width: 3px; height: 0px; top: 9.51875px; left: 19px;"><textarea autocorrect="off" autocapitalize="off" spellcheck="false" tabindex="0" style="position: absolute; bottom: -1em; padding: 0px; width: 1000px; height: 1em; outline: none;"></textarea></div><div class="CodeMirror-scrollbar-filler" cm-not-content="true"></div><div class="CodeMirror-gutter-filler" cm-not-content="true"></div><div class="CodeMirror-scroll" tabindex="-1"><div class="CodeMirror-sizer" style="margin-left: 11px; margin-bottom: 0px; border-right-width: 0px; padding-right: 0px; padding-bottom: 0px;"><div style="position: relative; top: 0px;"><div class="CodeMirror-lines" role="presentation"><div role="presentation" style="position: relative; outline: none;"><div class="CodeMirror-measure"><pre><span>xxxxxxxxxx</span></pre></div><div class="CodeMirror-measure"></div><div style="position: relative; z-index: 1;"></div><div class="CodeMirror-code" role="presentation" style=""><div class="CodeMirror-activeline" style="position: relative;"><div class="CodeMirror-activeline-background CodeMirror-linebackground"></div><div class="CodeMirror-gutter-background CodeMirror-activeline-gutter" style="left: -11px; width: 11px;"></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test:test.o</span></pre></div><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span>@gcc test.o <span class="cm-attribute">-o</span> test </span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.o:test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span>@gcc <span class="cm-attribute">-c</span> test.s <span class="cm-attribute">-o</span> test.o</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.s:test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span>@gcc <span class="cm-attribute">-S</span> test.i <span class="cm-attribute">-o</span> test.s</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">test.i:test.c</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span class="cm-tab" role="presentation" cm-text="	">    </span>@gcc <span class="cm-attribute">-E</span> test.c <span class="cm-attribute">-o</span> test.i</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"><span cm-text="" cm-zwsp="">
</span></span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">.PHONY:clean</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;">clean:</span></pre><pre class=" CodeMirror-line " role="presentation"><span role="presentation" style="padding-right: 0.1px;"> &nbsp; &nbsp;<span class="cm-builtin">rm</span> <span class="cm-attribute">-rf</span> test test.o test.s test.i</span></pre></div></div></div></div></div><div style="position: absolute; height: 0px; width: 1px; border-bottom: 0px solid transparent; top: 276px;"></div><div class="CodeMirror-gutters" style="height: 276px; left: 0px;"><div class="CodeMirror-gutter CodeMirror-foldgutter"></div></div></div></div></pre><p><span>这样使用make就不会显示任何信息</span></p><p><img src="data:image;base64,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" referrerpolicy="no-referrer"></p><h1 id='3makefile学习资料'><span>3.makefile学习资料</span></h1><p><span>参见《跟我一起写Makefile》作者: 陈皓</span></p><p><span>下载链接:</span><a href='https://scc.ustc.edu.cn/zlsc/czxt/200910/W020150417520333830657.pdf'><span>https://scc.ustc.edu.cn/zlsc/czxt/200910/W020150417520333830657.pdf</span></a></p><h1 id='4有关makefile的其他内容'><span>4.有关makefile的其他内容</span></h1><p><span>1.makefile保存了编译器和链接器的参数选项，并且描述了所有源文件之间的关系 </span></p><p><span>2.Makefile里主要包含了五个东西：显式规则、隐晦规则、变量定义、文件指示和注释</span></p><blockquote><ul><li><p><span>显式规则说明了，如何生成一个或多个目标文件</span></p></li><li><p><span>make有自动推导的功能，所以隐晦的规则可以让我们比较粗糙地简略地书写makefile，比如源文件与目标文件之间的时间关系判断之类</span></p></li><li><p><span>在makefile中可以定义变量，当makefile被执行时，其中的变量都会被扩展到相应的引用位置上，通常使用 $(var) 表示引用变量</span></p></li><li><p><span>文件指示。可以使用include关键字把别的Makefile包含进来,类似C语言中的include </span></p></li><li><p><span>注释，makefile中可以使用 # 在行首表示行注释</span></p></li></ul></blockquote><p>&nbsp;</p></div></div>
</body>
</html>